package com.oraking.android.cmm.util;

import java.math.BigDecimal;

public class CmmMathUtil {
	
	private static CmmMathUtil cmmMathUtil = new CmmMathUtil();
	
	private CmmMathUtil(){
	}
	
	public static CmmMathUtil getInstance(){
		return cmmMathUtil;
	}
	
	//-------------------------------------------------------------------------
	//함 수 명 : decimalScale(String decimal, int loc, int mode)
	//작 성 자 : 김경환
	//내    용 : 
	// @param decimal 부동소수
	// @param loc     자리수 제한 위치. 2자리까지 보이면 2, 3자리까지면 3 이런식으로 지정
	// @param mode    1 내림, 2 반올림, 3 올림
	//-------------------------------------------------------------------------
	public int decimalScale(String decimal, int loc, int mode){
		
		BigDecimal bd = new BigDecimal(decimal);
		BigDecimal result = null;
		
		if(mode == 1){
			result = bd.setScale(loc, BigDecimal.ROUND_DOWN);		// 내림
		}else if(mode == 2){
			result = bd.setScale(loc, BigDecimal.ROUND_HALF_UP);	// 반올림
		}else if(mode == 3){
			result = bd.setScale(loc, BigDecimal.ROUND_UP);			// 올림
		}
		
		return result.intValue();
	}
}
